Chris Pollett > Old Classes >
CS152

( Print View )

Student Corner:
  [Grades Sec1]

  [Submit Sec1]

  [Class Sign Up Sec1]

  [
Lecture Notes]
  [Discussion Board]

Course Info:
  [Texts & Links]
  [Topics/Outcomes]
  [Outcomes Matrix]
  [Grading]
  [HW/Quiz Info]
  [Exam Info]
  [Regrades]
  [Honesty]
  [Additional Policies]
  [Announcements]

HWs and Quizzes:
  [Hw1]  [Hw2]  [Hw3]
  [Hw4]  [Hw5]  [Quizzes]

Practice Exams:
  [Mid]  [Final]

                           












CS152Spring 2009Lecture Notes

Programming Paradigms

Videos of lectures are available. As they are on my office machine and I don't want robots to try to download them, the directory is password protected. The login is guest and the password is guest.

Below are my lecture notes for the class so far. They should serve as a rough guide to what was covered on any given day. Frequently, however, I say more in class than is in these notes. Also, I tend to dynamically correct typos on the board that might appear in these lecture notes. So caveat emptor.

Week 1: [Jan. 26 -- Introduction to Programming Languages] [Jan. 28 -- Program Abstractions, Language Paradigms]

Week 2: [Feb. 2 -- Language Translation, History] [Feb. 4 -- C for Java Programmers]

Week 3: [Feb. 9 -- More C for Java Programmers] [Feb. 11 -- gdb; Lexical and Parse Structure of Programming Languages]

Week 4: [Feb. 16 -- More CFGs, Parse Trees, Ambiguity] [Feb. 18 -- EBNF and Syntax Diagrams]

Week 5: [Feb. 23 -- Parsing Techniques] [Feb. 25 -- Parsing Tools]

Week 6: [Mar. 2 -- Basic Semantics] [Mar. 4 -- Visibility and Symbols Tables]

Week 7: [Mar. 9 -- Name Resolution, Overloading, Allocation, and Lifetimes] [Mar. 11 -- Heap, Variables, References, and Garbage]

Week 8: Midterms Week -- No new material

Week 9: March Break -- No Lectures

Week 10: [Mar. 30 -- Object-Oriented Languages][Apr. 1 -- More OO]

Week 11: [Apr. 6 -- Functional Programming; Scheme] [Apr. 8 -- More Scheme]

Week 12: [Apr. 13 -- A Little More Scheme] [Apr. 15 -- Continuations; Data Types and ML]

Week 13: [Apr. 20 -- Simple Types, Kinds of Type Constructors] [Apr. 22 -- Type Constructors and Recursive Data Types]

Week 14: [Apr. 27 -- ML data abstractions, Operations on Types] [Apr. 29 -- Control Structures]

Week 15: [May 4 -- Procedures] [May 6 -- More Procedures]

Week 16: [May 11 -- Finish Procedures; Logic Programming]